﻿//////////////////////////////////////////////////////////////////////////////
//
//  Copyright © 1998-2024 Glodon Company Limited.  All rights reserved.
//
//  Use of this software is subject to the terms of the Glodon license
//  agreement provided at the time of installation or download, or which
//  otherwise accompanies this software in either electronic or hard copy form.  
//
//////////////////////////////////////////////////////////////////////////////


#pragma once

#include "GcmpDwgDxfInterface.h"
#include "FileImporterDefs.h"
#include "ElementId.h"

namespace gcmp
{
    /// \brief Dxf导入选项配置
    struct GCMP_DWG_DXF_INTERFACE_EXPORT DxfImporterConfig
    {
        /// \brief 构造函数
        DxfImporterConfig();

        EnImportColour Colour;              /// < 颜色处理方式。默认保留在导入的文档中定义的颜色。
        EnImportLayerOrLevel LayerOrLevel;  /// < 层或楼层处理方式。默认只导入可见。
        EnImportUnit Unit;                  /// < 单位处理方式。默认是毫米。
        EnImportLocate Locate;              /// < 导入项和项目对齐处理方式。默认将导入项的模型中心，放置在视图范围的中心。
        bool IngoreGeometryZ;               /// < 是否忽略几何图元Z值。默认忽略，设置成0.0。
        EnImportLineTypeScaleMode LineTypeScaleMode;   /// < 线型比例模式
        double GlobalDefaultLineTypeScale;   /// < 全局默认线型比例，值越小离散周期内重复的次数越多，越耗费性能
        bool IsImportPolyCurveAsWhole;   /// < 是否将CAD的PolyCurve导入为平台的PolyCurve
        bool IsImportPolyCurveAsNarrow;  /// < 导入多段线时是否忽略全局线宽
        bool IsImportSplineCurveAsDiscrete; /// <导入样条曲线为离散的连续直线
        /// \brief 重置成默认值
        void InitAsDefault();
    };
}

